﻿/* 2011/12/3 */

namespace PictureManager
{
    /// <summary>
    /// Operations of PictureManager.
    /// </summary>
    public enum PictureManagerOperationCategory : int
    {
        /// <summary>
        /// None operation.
        /// </summary>
        None = 0x00000000,

        /// <summary>
        /// Adds prefix to the file name.
        /// </summary>
        Prefix = 0x00000001,
        /// <summary>
        /// Adds postfix to the file name.
        /// </summary>
        Postfix = 0x00000002,
        /// <summary>
        /// Clears the first matched sub-string of the file name.
        /// </summary>
        ClearFirstSubString = 0x00000003,
        /// <summary>
        /// Clears the last matched sub-string of the file name.
        /// </summary>
        ClearLastSubString = 0x00000004,
        /// <summary>
        /// Clears all matched sub-string of the file name.
        /// </summary>
        ClearAllSubString=0x00000005,

        /// <summary>
        /// Selects previous file.
        /// </summary>
        SelectPrevious = 0x00000010,
        /// <summary>
        /// Selects next file.
        /// </summary>
        SelectNext = 0x00000020,
        /// <summary>
        /// Adds the selected files in file list to file basket.
        /// </summary>
        ListAddToBasket = 0x00000030,
        /// <summary>
        /// Removes the selected files in file list from file basket.
        /// </summary>
        ListRemoveFromBasket = 0x00000040,
        /// <summary>
        /// Refreshes file list.
        /// </summary>
        RefreshFileList = 0x00000050,
        /// <summary>
        /// Plays images of current folder.
        /// </summary>
        PlayImage = 0x00000060,
        /// <summary>
        /// Selects all files.
        /// </summary>
        SelectAll = 0x00000070,
        /// <summary>
        /// Select invert files.
        /// </summary>
        SelectInvert = 0x00000080,
        /// <summary>
        /// Select none file.
        /// </summary>
        SelectNone = 0x00000090,

        /// <summary>
        /// Zooms in current image.
        /// </summary>
        ZoomInImage = 0x00000100,
        /// <summary>
        /// Zooms out current image.
        /// </summary>
        ZoomOutImage = 0x00000200,
        /// <summary>
        /// Draws the image with original size.
        /// </summary>
        OriginalSizeImage = 0x00000300,
        /// <summary>
        /// Draws the image with the size of full form.
        /// </summary>
        FillFormImage = 0x00000400,
        /// <summary>
        /// Draws the image with the size that fix to the form.
        /// </summary>
        FitFormImage = 0x00000500,
        /// <summary>
        /// Moves the image by given distance.
        /// </summary>
        MoveImage = 0x00000800,

        /// <summary>
        /// Switches to the previous view.
        /// </summary>
        PreviousView = 0x00001000,
        /// <summary>
        /// Switches to the next view.
        /// </summary>
        NextView = 0x00002000,
        /// <summary>
        /// Focuses on the rename file text box.
        /// </summary>
        RenameFile = 0x00003000,
        /// <summary>
        /// Focuses on the search pattern text box.
        /// </summary>
        SearchFile = 0x00004000,

        /// <summary>
        /// Hides the form.
        /// </summary>
        HideForm = 0x00010000,
        /// <summary>
        /// Shows the border of form when it has been hidden, or hide the border of form when it has been shown.
        /// </summary>
        ShowOrHideBorder = 0x00020000,

        /// <summary>
        /// Cuts files selected in file list.
        /// </summary>
        CutFile = 0x00100000,

        /// <summary>
        /// Copies files selected in file list.
        /// </summary>
        CopyFile = 0x00200000,

        /// <summary>
        /// Pastes files to file list.
        /// </summary>
        PasteFile = 0x00300000,

        /// <summary>
        /// Deletes file selected in file list.
        /// </summary>
        DeleteFile = 0x00400000,

        /// <summary>
        /// Cut files selected in file basket.
        /// </summary>
        CutBasketFile = 0x00500000,

        /// <summary>
        /// Copy files selected in file basket.
        /// </summary>
        CopyBasketFile = 0x00600000,

        /// <summary>
        /// Delete files selected in file basket.
        /// </summary>
        DeleteBasketFile = 0x00700000,
    };
}